package com.ruoyi.warn.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 预警规则对象 BUS_WATER_WARNRULE
 * 
 * @author maliang
 * @date 2025-09-10
 */
public class BusWaterWarnrule extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 规则id */
    private String id;

    /** 预警名称 */
    @Excel(name = "预警名称")
    private String warnname;

    /** 预警类型 1-相关性预警；2-持续超标 3-限值预警 4-持续恶化；5-监测项超标；6-断面超标；7-瞬时突变；8-达标差距；9-站点离线 */
    @Excel(name = "预警类型 1-相关性预警；2-持续超标 3-限值预警 4-持续恶化；5-监测项超标；6-断面超标；7-瞬时突变；8-达标差距；9-站点离线")
    private String warntype;

    /** 判断条件（全文） */
    @Excel(name = "判断条件", readConverterExp = "全=文")
    private String judgmentcondition;

    /** 预警级别  1-一级；2-二级；3-三级（一级最高依次降低） */
    @Excel(name = "预警级别  1-一级；2-二级；3-三级", readConverterExp = "一=级最高依次降低")
    private String warnlevel;

    /** 预警描述 */
    @Excel(name = "预警描述")
    private String warndesc;

    /** 是否开启   0是 1否 */
    @Excel(name = "是否开启   0是 1否")
    private String isno;

    /** 更新人员 */
    @Excel(name = "更新人员")
    private Long userid;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createtime;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updatetime;

    /** 预警规则条件信息 */
    private List<BusWaterWarnruleConditions> busWaterWarnruleConditionsList;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setWarnname(String warnname) 
    {
        this.warnname = warnname;
    }

    public String getWarnname() 
    {
        return warnname;
    }

    public void setWarntype(String warntype) 
    {
        this.warntype = warntype;
    }

    public String getWarntype() 
    {
        return warntype;
    }

    public void setJudgmentcondition(String judgmentcondition) 
    {
        this.judgmentcondition = judgmentcondition;
    }

    public String getJudgmentcondition() 
    {
        return judgmentcondition;
    }

    public void setWarnlevel(String warnlevel) 
    {
        this.warnlevel = warnlevel;
    }

    public String getWarnlevel() 
    {
        return warnlevel;
    }

    public void setWarndesc(String warndesc) 
    {
        this.warndesc = warndesc;
    }

    public String getWarndesc() 
    {
        return warndesc;
    }

    public void setIsno(String isno) 
    {
        this.isno = isno;
    }

    public String getIsno() 
    {
        return isno;
    }

    public void setUserid(Long userid) 
    {
        this.userid = userid;
    }

    public Long getUserid() 
    {
        return userid;
    }

    public List<BusWaterWarnruleConditions> getBusWaterWarnruleConditionsList()
    {
        return busWaterWarnruleConditionsList;
    }

    public void setBusWaterWarnruleConditionsList(List<BusWaterWarnruleConditions> busWaterWarnruleConditionsList)
    {
        this.busWaterWarnruleConditionsList = busWaterWarnruleConditionsList;
    }

    public Date getCreatetime() {
        return createtime;
    }

    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }

    public Date getUpdatetime() {
        return updatetime;
    }

    public void setUpdatetime(Date updatetime) {
        this.updatetime = updatetime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("warnname", getWarnname())
            .append("warntype", getWarntype())
            .append("judgmentcondition", getJudgmentcondition())
            .append("warnlevel", getWarnlevel())
            .append("warndesc", getWarndesc())
            .append("isno", getIsno())
            .append("remark", getRemark())
            .append("userid", getUserid())
            .append("busWaterWarnruleConditionsList", getBusWaterWarnruleConditionsList())
            .toString();
    }
}
